apiVersion: v1
kind: ConfigMap
metadata:
name: demo-config
data:
APP_ENV: "dev"
API_URL: "http://example.com"
app.conf: |
# Sample configuration file
setting1 = value1
setting2 = value2
apiVersion: v1
kind: Secret
metadata:
name: demo-secret
type: Opaque
data:
USERNAME: ZGV2X3VzZXI= # base64(dev_user)
PASSWORD: MTIzNDU2 # base64(123456)
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo-app
spec:
selector:
matchLabels: { app: demo-app }
template:
metadata:
labels: { app: demo-app }
spec:
containers:
- name: app
image: busybox
command: ["sh", "-c", "printenv | grep -E 'APP_ENV|API_URL|USERNAME|PASSWORD'; sleep 3600"]
envFrom:
- configMapRef:
name: demo-config
- secretRef:
name: demo-secret
apiVersion: v1
kind: Service
metadata:
name: demo-svc
spec:
selector:
app: demo-app
ports:
- port: 8080
targetPort: 8080
protocol: TCP
type: ClusterIP